Method and system for monitoring domain name registrations

ABSTRACT

Improved approaches to domain name monitoring are disclosed. The monitoring of domain names, e.g., registrations therefor, is beneficial to holders of similar domain names, trademark owners, and competitors. Such monitoring can be automatically performed.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a divisional of U.S. application Ser. No.09/655,273, filed Sep. 5, 2000, from which priority is claimed, and thecontent of which is hereby incorporated by reference. This applicationalso claims priority of U.S. Provisional Application No. 60/152,683,filed Sep. 7, 1999, the content of which is hereby incorporated byreference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to on-line operations and, moreparticularly, to operations pertaining to on-line forms andregistrations.

2. Description of the Related Art

Today, the Internet has facilitated electronic transmission and filingof documents. Various business or legal forms and documents areavailable on-line via the Internet. Electronic filing of certaindocuments or forms (including registrations) is permitted, such aspatent or trademark applications, product or user registrations, orcourt filings.

Nevertheless, the sophistication often required to prepare or file suchdocuments or forms is significant and thus renders ordinary lay personsseriously disadvantaged in utilizing such on-line documents or forms.Many times the documents or forms require careful wording for clarity orlegal purposes. As an example, legal documents need to be carefullycrafted to provide the legal protection sought. Given the complexitiesoften involved, the creation and filing of electronic documents islargely still manually performed by skilled or experienced persons.There are many books and sample documents (both on-line and off-line)that can be found after some effort, but it is difficult to not onlylocate the appropriate samples or forms but also to complete or alterthe samples or forms for a user's particular situation.

Thus, there is a need for improved techniques for improved approaches toenable and assist unsophisticated persons to utilize on-line forms ordocuments.

SUMMARY OF THE INVENTION

Broadly speaking, the invention pertains to domain name monitoring. Themonitoring of domain names, e.g., registrations therefor, is beneficialto holders of similar domain names, trademark owners, and competitors.Such monitoring can be automatically performed.

The invention can be implemented in numerous ways including, a method,system, device, and a computer readable medium. Several embodiments ofthe invention are discussed below.

As a computer-implemented method for monitoring domain nameregistrations, one embodiment of the invention includes at least theacts of: receiving a request to monitor a name; searching a database ofdomain name registrations to identify one or more registrations ofdomain names that match the name being monitored; and notifying therequestor of the identified one or more registrations.

As a computer-implemented method for monitoring domain nameregistrations, another embodiment of the invention includes at least theacts of: registering a name to be monitored for a requester; searchingat one or more registration databases to identify one or moreregistrations of domain names that are similar to that of the name to bemonitored; and notifying the requestor of the identified one or moreregistrations.

As a system for monitoring domain name registrations stored to a domainname registration database utilized by a registrar of domain names, oneembodiment of the invention includes at least a monitoring database thatstores monitoring information, and a domain monitoring serveroperatively connected to the monitoring database. The monitoringinformation specifying at least one requester and at least one domaincharacter string to be monitored for the requestor. The domainmonitoring server operates to search the domain name registrationdatabase for matching or similar domain name registrations to that ofthe at least one domain character string, produce a registration reportidentifying those of the matching or similar domain name registrations,and forward the registration report to the requester.

Other aspects and advantages of the invention will become apparent fromthe following detailed description taken in conjunction with theaccompanying drawings which illustrate, by way of example, theprinciples of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be readily understood by the following detaileddescription in conjunction with the accompanying drawings, wherein likereference numerals designate like structural elements, and in which:

FIG. 1A is a block diagram of a web agent system according to oneembodiment of the invention;

FIG. 1B is a flow diagram of agent processing according to oneembodiment of the invention;

FIG. 2A is a block diagram of an electronic filing system according toone embodiment of the invention;

FIG. 2B is a flow diagram of agent processing according to oneembodiment of the invention;

FIG. 3 is a block diagram of a registration monitoring system accordingto one embodiment of the invention;

FIG. 4 is a flow diagram of server-side request monitoring processingaccording to one embodiment of the invention;

FIG. 5 is a flow diagram of update determination processing according toone embodiment of the invention;

FIG. 6 is a flow diagram of update registration processing according toone embodiment of the invention;

FIG. 7 is a flow diagram of website examination processing according toone embodiment of the invention;

FIG. 8A is a representative tree diagram of the initial website version;

FIG. 8B is a representative tree diagram of the current website version;

FIG. 8C is a block diagram of a domain monitoring system according toone embodiment of the invention;

FIG. 9 is flow diagram of domain monitoring process according to oneembodiment of the invention; and

FIG. 10 is a flow diagram of registration notification processingaccording to one embodiment of the invention.

DETAILED DESCRIPTION OF THE INVENTION

One aspect of the invention is that domain name monitoring. Themonitoring of domain names, e.g., registrations therefor, is beneficialto holders of similar domain names, trademark owners, and competitors.Such monitoring can be automatically performed.

Another aspect of the invention pertains to techniques for completingon-line forms, on-line filings or registrations. In one embodiment, theinvention is an on-line form completion agent or an on-line registrationagent for intelligently guiding on-line form completion or registration.

Still another aspect of the invention pertains to techniques forautomatically monitoring a registration to determine whether theregistration needs updated. While the type of registration can varywidely, e.g., registration form, the registrations have identifyregistrations information or registration content that may needmonitoring to insure that the registration is up to date. The inventionis particularly useful for monitoring copyright registrations, moreparticularly, copyright registrations for on-line works, for example,websites.

Embodiments of this aspect of the invention are discussed below withreference to FIGS. 1A-10. However, those skilled in the art will readilyappreciate that the detailed description given herein with respect tothese figures is for explanatory purposes as the invention extendsbeyond these limited embodiments.

As previously noted, one aspect of the invention pertains to techniquesfor completing on-line forms, on-line filings or registrations. In oneembodiment, the invention is an on-line form completion agent or anon-line registration agent for intelligently guiding an on-lineregistration.

FIG. 1A is a block diagram of a web agent system 100 according to oneembodiment of the invention. The web agent system 100 includes a primaryserver 102 and an agent server 104. The primary server 102 and the agentserver 104 are coupled to the Internet 106. Typically, the primaryserver 102 and the agent server 104 are coupled to the Internet 106through high speed connections, such as T1 lines, ISDN lines, etc. Theweb agent system 100 also includes an Internet service provider (ISP)108 and a computer 110. A computer 110 includes, among other things, abrowser 112 (i.e., network browser) that facilitates a user's access toservers provided on the Internet. In the case of this embodiment, thebrowser 112 is used to facilitate user access to the agent server 104.

The web agent system 100 operates to provide an improved graphical userinterface (GUI) to the user of the browser 112 of the computer 110. Inparticular, the general scenario is that the user of the browser 112 ofthe computer 110 desires to interact with the primary server 102 throughthe Internet 106. However, according to the invention, to provide anenhanced graphical user interface and/or greater sophistication, thebrowser 112 is instead directed to the agent server 104. The agentserver 104 then in turn communicates with the primary server 102 onbehalf of the user of the browser 112. As a result, the user of thebrowser 112 achieves the same results by interacting with the agentserver 104 that would be obtained if the user directly interacted withthe primary server 102. By communicating with the agent server 104 thebrowser 112 can receive an improved GUI, can receive additional guidancethan provided by the primary server 102, and/or can be required to enterless data than if accessing the primary server 102. Hence, by using theagent server 104 in place of the primary server 102, the user of thebrowser 112 on the computer 110 is advantageously provided with anenhanced interaction with the agent server 104 than would be availableif the browser 112 interacted with the primary server 102.

FIG. 1B is a flow diagram of agent processing 120 according to oneembodiment of the invention. The agent processing 120 is, for example,performed by the web agent system 100 illustrated in FIG. 1A.

The agent processing 120 initially accesses an agent web interface. Theagent web interface is provided by the agent server 104. The agent webinterface is a GUI offered by the agent server 104 to a visiting user.As an example, the agent web interface can be implemented as a markuplanguage document or page that is displayed by the browser. Examples ofmarkup language are HTML and XML. Next, user input is provided 124 tothe agent web interface. Here, the user of the browser 112 inputs datathat is supplied to the agent server 104. The agent server 104 thenprocesses 126 the user input to determine input data. The resultinginput data is then forwarded 128 from the agent server 104 to theprimary server 102. At the primary server 104, the input data isprocessed 130 to produce response data. Then, the response data isforwarded 132 from the primary server 102 to the agent server 104.Thereafter, the agent server 104 forwards 134 the response data to theuser. The agent processing 120 is then complete and ends.

In this arrangement, the agent server is acting as an intermediarybetween the user and the primary server. The agent server can assist theuser in accessing information from the primary server or submittinginformation to the primary server. Although the agent processing 120 isuseful in many situations, one particular situation in which the agentprocessing 120 is particularly useful is for on-line registrations orelectronic filings. FIGS. 2A and 2B pertain to an embodiment of theinvention concerning electronic filings.

FIG. 2A is a block diagram of an electronic filing system 200 accordingto one embodiment of the invention. The electronic filing system 200includes an electronic filing server 202 and an electronic filing agentserver 204. The electronic filing server 202 and the electronic filingagent server 204 are coupled to the Internet 206. Typically, theelectronic filing server 202 and the electronic filing agent server 204couple to the Internet 206 through high speed connections. In addition,the electronic filing system 200 includes an ISP 208 that couples to theInternet 206, typically also through a high speed connection. The ISP208 provides access to the internet 206 to user's computers through adial-up modem access to the ISP 208. In FIG. 2A, a user A's computer 210and a user B's computer 212 are able to couple to the ISP 208 to accessthe Internet 206.

The electronic filing system 200 is capable of achieving electronicfiling with the electronic filing server 202. In other words, theelectronic filing server 202 supports electronic filing of a document.Either the user A or the user B is able to have a documentelectronically filed using the electronic filing system 200. Accordingto the invention, the user A or the user B can achieve the electronicfiling of a document by accessing the electronic filing agent server204. Here, the user interacts with the electronic filing agent server204 and not the electronic filing server 202. This is advantageous forthe user because the electronic filing agent server 204 is a much morefriendly server and offers enhanced support or guidance in theelectronic filing of documents. Once the electronic filing agent server204 understands the actions taken for the user, the electronic filingagent server 204 interacts with the electronic filing server 202 toeffectuate the electronic filing of the document.

FIG. 2B is a flow diagram of agent processing 220 according to oneembodiment of the invention. The agent processing 220 begins with adecision 222 that determines whether an agent filing request has beenreceived. As long as no agent filing request has been received, theagent processing 220 awaits such a request. In other words, the agentprocessing 220 is effectively invoked when an agent filing request hasbeen received.

In any case, once an agent filing request has been received, the agentserver determines 224 the filing type from the agent filing request. Thefiling type represents the type of electronic filing to be formed. Forexample, the filing type can distinguish between different documentsbeing electronically filed. Here, in this embodiment, the filing type isassumed to identify a form document (or form page) that is to beelectronically submitted or filed, namely a predetermined electronicfiling form. Then, a questionnaire is retrieved 226 based on the filingtype. The questionnaire is then forwarded 228 to the requester. Here,the requester is a user of the user computer 210, 212. The questionnairecan then be presented to the user by a browser or other applicationexecuting on the user computer 210, 212.

A decision 230 then determines whether a response has been received.Here, the agent processing 220 awaits a response from the user, namely,the completion and submission of the questionnaire. Once the responsehas been received, form fields for the predetermined electronic filingform are determined 232 based on the response data and predeterminedlogic. The predetermined logic typically includes expert logic and isusually at least partially specific to the predetermined electronicfiling form. Then, a completed electronic filing form is automaticallycreated 234 using the determined form fields. Thereafter, the completedelectronic filing form is submitted 236 to the electronic filing server.Here, the agent server submits the completed electronic filing form tothe electronic filing server on behalf of the requestor. The agentprocessing 220 is then complete and ends. However, the agent processing220 could also wait for verification or acknowledgement from theelectronic filing server and then forwarded a message or anacknowledgement to the requester.

The web agent system 100 and the agent processing 120 can be for variouspurposes, such as online registrations or online document generation.The electronic filing system 200 and the agent processing 220 can beused in electronic filing of various types of documents. The documentsor registrations can pertain to many different application. Oneparticularly useful application is in legal documents or registrations,such legal documents or registrations can be generated online orelectronically filed. The invention enables the legal document orregistrations to be prepared properly with ease. As an example, the webagent system 100 or the electronic filing system 200 can be used togenerate and/or file electronic documents (including pages or forms),such as (i) a trademark application form which after being prepared canbe electronically filed (or downloaded, printed and manually filed) withthe U.S. Patent and Trademark Office, (ii) a copyright registration formwhich after being prepared can be electronically filed (or downloaded,printed and manually filed) with the U.S. copyright office, (iii) alicense registration form which after being completed can beelectronically filed (or downloaded, printed and manually filed) withthe licensor, and (iv) various other documents.

As noted above, another aspect of the invention pertains to techniquesfor automatically monitoring a registration to determine whether theregistration needs updated. While the type of registration can varywidely, e.g., registration form, the registrations have registrationinformation or registration content that may need monitoring to insurethat the registration is up-to-date.

The invention is particularly useful for monitoring copyrightregistrations, more particularly, copyright registrations for on-lineworks, for example, websites. Specifically, when an initial copyrightregistration for a website is initially obtained (e.g., throughelectronic submission), the initial copyright registration should beupdated as the content of the website is changed. The invention can beused to automatically determine and notify a webmaster (or otherappropriate person) that an updated copyright registration is needed.The submission of the updated copyright registration can also beautomated.

FIG. 3 is a block diagram of a registration monitoring system 300according to one embodiment of the invention. The registrationmonitoring system 300 includes a monitoring server 302 that connects tothe Internet 304. The monitoring server 302 operates to monitor variouswebsites provided on the Internet 304 and to initiate a registrationprocess when a monitored website requires or requests a subsequentregistration. The monitoring server 302 is coupled to a monitoringdatabase 306. The monitoring database 306 stores information pertainingto those websites on the Internet 304 to be monitored, i.e., themonitored websites. The information pertaining to the websites includesat least contact information and prior registration information.Although it is assumed that the monitored website has been previouslyregistered, much of the processing can also be used for websites not yetregistered.

The registration monitoring system 300 also includes a monitored websiteA 308 and a monitored website B 310 which are also coupled to theInternet 304. The monitored website A 308 and the monitored website B310 represent exemplary websites that are coupled to the Internet 304and monitored by the monitoring server 302. A website is deemed tocontain content that is accessible through the Internet 304. The contentis provided in pages, i.e., web pages, which can include text, images,video, links, etc. Typically, a webmaster updates (e.g., alters ormodifies) the content of the website.

The registration monitoring system 300 also includes a requester 312that couples to the Internet 304 through an Internet Service Provider(ISP) 314. The requester 312 is a client device that is operatedautomatically or by user interaction with the monitoring server 302 torequest that the monitored website A 308 and/or the monitored website B310 be monitored. By monitoring the websites, the monitoring server 302can determine when an updated registration would be appropriate orrecommended. When an updated registration for a particular website isdeemed appropriate or recommended, an updated registration can beautomatically pursued or the requestor can receive a notification fromthe monitoring server 302 advising that an updated registration isdeemed appropriate or recommended. When an updated registration is to bepursued, an updated registration can be submitted on-line to aregistration server 316. For example, when the monitoring server 302 ismonitoring to determine when an updated copyright registration isneeded, then the registration server 316 can pertain to an agent serveror a primary server. As examples, the agent server can be the agentserver 104, 204, and the primary server can be the primary server 102 orthe filing server 202 (e.g., the Copyright Office's server).

The requestor 312 can request the monitoring of websites in advance. Forexample, the requestor 312 could interact with the monitoring server 302to request monitoring of a particular website. The monitoring server 302performs processing to process such requests for monitoring from variousrequestors. FIG. 4 is a flow diagram of server-side request monitoringprocessing 400 according to one embodiment of the invention. Theserver-side request monitoring processing 400 is, for example, performedby the monitoring server 302 illustrated in FIG. 3.

The server-side request monitoring processing 400 begins with a decision402 that determines whether a request for monitoring has been received.When the decision 402 determines that a request for monitoring has notyet been received, the server-side request monitoring processing 400effectively awaits a monitoring request. Typically, the monitoringrequest will be provided by a requester, such as the requester 312illustrated in FIG. 3. Once the decision 402 determines that amonitoring request has been received, the server-side request monitoringprocessing 400 continues. In other words, the server-side requestmonitoring processing 400 is invoked when a monitoring request isreceived.

After the monitoring request is received, a monitoring request page isforwarded 404 to the requestor. The monitoring request page requestsinformation from the requestor detailing the monitoring to be performed.The requestor then operates to complete or provide information withrespect to the monitoring request page. For example, the informationrequested by the monitoring request pages can include identification ofwebsite to be monitored, name, address and electronic mail address ofrequestor, type of monitoring desired, etc. To the extent that themonitoring server 302 already knows information, the monitoring requestpage can either not request such information or request confirmation ofsuch information. Once the requester has completed providing theinformation requested by the monitoring request page, the requestersubmits the form back to the monitoring server 302.

Following the submission of the monitoring request page, a decision 406determines whether a submission has been made. Here, the server-siderequest monitoring processing 400 determines whether the monitoringrequest page has been submitted back to the monitoring server 302. Ifthe monitoring request page has not been submitted, then the decision406 causes the server-side request monitoring processing 400 to awaitthe submission of the monitoring request page. Once the decision 406determines that the monitoring request page has been submitted, dataverification is performed 408. The data verification can verify or checkthe information provided in the monitoring request page for commonerrors, such as incomplete information or improper selections.

Next, a decision 410 determines whether the data verification hasdetermined that the submitted monitoring request page was complete andproper. When the decision 410 determines that the submitted monitoringrequest page was not complete and proper, a defective data page isformed and forwarded 412 to the requester so that needed information canbe obtained. Then, the server-side request monitoring processing 400returns to repeat the decision 406 and subsequent blocks so that theneeded data can be provided by the requestor and then verified. On theother hand, when the decision 410 determines that the submittedmonitoring request page is complete and proper, the information providedin the monitoring request page (and defective data page), i.e.,monitoring request information, is stored 414 in the monitoring database306. Thereafter, the server-side request monitoring processing 400 iscomplete and ends.

Once one or more websites have requested monitoring, an updatedetermination process can be performed by the monitoring server 302 todetermine when the monitored websites should be registered. Typically,the monitored websites have been previously registered so that theupdate determination process determines whether an updated registrationis deemed appropriate or recommended.

FIG. 5 is a flow diagram of update determination processing 500according to one embodiment of the invention. The update determinationprocessing 500 is, for example, performed by the monitoring server 302illustrated in FIG. 3.

The update determination processing 500 initially identifies 502 entriesin the monitoring database to be monitored. Then, one of the identifiedentries to be processed is selected 504. Next, prior website informationfor the website associated with the selected entry is retrieved 506 froma storage location, such as the monitoring database 306 illustrated inFIG. 3. The website associated with the selected entry is then accessed508 to obtain current website information. FIG. 7, discussed below,provides additional details on the generation of the current websiteinformation for the website associated with the selected entry.

After the current website information has been obtained, the currentwebsite information is compared 510 with the prior website informationto produce a comparison value. Here, the comparison value reflects thedegree or likelihood that the website associated with the selected entryhas been altered or changed since the time at which the prior websiteinformation was obtained. The comparison can be performed in a varietyof ways as discussed in greater detail below.

Next, a decision 512 determines whether the comparison value exceeds apredetermined threshold. When the comparison value does exceed thepredetermined threshold, an update flag is set 514 in the monitoringdatabase for the selected entry. Here, by setting the update flag, theregistration monitoring system has effectively concluded that an updatedregistration should be pursued for the website associated with theselected entry. The update flag is utilized to mark the selected entryfor further processing that achieves the updated registration (see FIG.6). In addition, the requestor for the website associated with theselected entry is notified 516 of the update condition. In other words,the requestor is notified that it is desirable to perform an updatedregistration for the website associated with the selected entry. Thenotification provided to the requester can take many forms includingelectronic mail, regular mail carrier mail, telephone message, etc.Preferably, however, the notification is provided by electronic mail andincludes a link to an update registration process. Such electronic mailnotifications can provide information on the amount of content changeand a recommendation for a registration. Still further, the electronicmail notifications can further provide an indication of where thecontent change occurs within the website.

In any case, after the notification 516, or directly following thedecision 512 when the comparison value does not exceed the predeterminedthreshold, a decision 518 determines whether there are more entries tobe processed. If the decision 518 determines that all of the entrieshave not been processed, then the update determination processing 500returns to repeat the block 504 and subsequent blocks so that additionalentries can be processed. On the other hand, once the decision 518determines that all of the entries have been processed, the updatedetermination processing 500 is complete and ends. However, it should berecognized that the update determination processing 500 can, forexample, be performed on a periodic basis such as daily, weekly ormonthly to periodically evaluate the websites being monitored by theregistration monitoring system for the need to pursue an updatedregistration.

The registration monitoring system also includes an update registrationprocess that serves to process updated registrations for the websitesthat have been determined to desire such updates.

FIG.6 is a flow diagram of update registration processing 600 accordingto one embodiment of the invention. The update registration processing600 is, for example, performed by the monitoring server 302 illustratedin FIG. 3.

The update registration processing 600 initially identifies 602 entriesin the monitoring database having the update flag set. As noted above,the update determination processing 500 can, for example, be used to setthe update flags to indicate that an updated registration should bepursued for the website associated with the selected entry. Next, one ofthe identified entries is selected 604 for processing. A decision 606then determines whether update registration has been authorized. Theauthorization can obtained in a variety of ways including, for example,in advance, in response to a notification, or by a specific request.When the decision 606 determines that update registration has not beenauthorized, the processing is complete for the selected entry becausethe updated registration is not obtained because such has not beenauthorized.

On the other hand, when the decision 606 determines that updateregistration has been authorized, prior registration information isretrieved 608. Typically, the prior registration information would beretrieved from a database, such as the monitoring database 306illustrated in FIG. 3. Then, updated website content is retrieved 610for the website associated with the selected entry. The updated websitecontent can, for example, be obtained by accessing the website directlyand retrieving the content, or the updated website content could besubmitted with a specific request or in response to a notification.Prior processing could have also previously stored the updated webcontent in the database (e.g., monitoring database 306).

After the updated website content is retrieved 610, registrationinformation is determined 612 based on the prior registrationinformation. Here, the registration information that is determined 612is for use with an update registration. By utilizing the priorregistration information in determining 612 the registrationinformation, the amount of additional information that needs to be newlyprovided is substantially reduced because much of the registrationinformation remains the same as it was with the prior registrationinformation.

Next, an update registration is initiated 614. In one implementation,the update registration can be initiated 614 by submitting a request toan on-line registration server (e.g., registration server 316). Adecision 616 then determines whether registration has been confirmed.When the decision 616 determines the registration has not yet beenconfirmed, a time-out decision 618 determines whether a time-out hasoccurred. If the decision 618 determines that a time-out has not yetoccurred, the update registration processing 600 returns to repeat thedecision 616 until either the registration has been confirmed or thetime-out event has occurred. When the decision 616 determines thatregistration has been confirmed, the update flag for the selected entryis cleared 620. Further, the registration information for the selectedentry is stored 622 for subsequent usage. For example, during asubsequent update registration processing, the registration informationthat is stored 622 at this point will become the prior registrationinformation or at least a portion thereof.

Following the storage 622 of the registration information, as well asfollowing the time-out decision 618 when the time-out has occurred orfollowing the decision 606 when update registration is not authorized, adecision 624 determines whether additional entries are to be processed.When the decision 624 determines that all of the entries have not yetbeen processed, the update registration processing 600 returns to repeatthe block 604 and subsequent blocks so that each of the entries in thedatabase having the update flag set can be processed. Once the decision624 determines that all of the entries have been processed, the updateregistration processing 600 is complete and ends. The updateregistration processing 600 can, for example, be periodically performedto process the update registrations for those of the websites beingmonitored that were indicated as desirable candidates for an updatedregistration.

The current website information can take a variety of forms and includevastly different types of information describing some attributes orparameters of the website. For example, in one implementation, thecurrent website information could merely obtain the names of all of thepages associated with the website. Alternatively, the current websiteinformation could obtain all the page names and page sizes for the pagesassociated with the website. Then, if a certain percentage of the pagesof the current website information have different names or differentsizes as compared to the prior website information, the current websitecould be determined to likely require or be desirous of an updatedregistration.

The nature and acquisition of the current website information can beperformed in a variety of ways. The approaches can also vary incomplexity from simple to complex. Websites follow the HTTP protocol andHTML protocols and thus header information or META data can be examined.For example, the META data can include a date associated with a HMTLfile. The pages of the website could also be retrieved and scanned toproduce information on the websites organization, the contents of thepages, or checksums. Comparison programs or algorithms could also beused to perform more sophisticated comparisons between prior and currentwebsites.

FIG. 7 is a flow diagram of website examination processing 700 accordingto one embodiment of the invention. The website examination processing700 is, for example, performed by the block 508 illustrated in FIG. 5.

The website examination processing 700 initially accesses 702 the mainpage of the website to be examined. Next, the website's main page isexamined 704 to determine page defining information for the main page.The page defining information can include a variety of differentcharacteristics or parameters of the main page. For example, the pagedefining information can include one or more of file date, file size,word count, number of links, frame layout, tables, color, number ofinputs, number of buttons and types of buttons, etc.

Next, a decision 706 determines whether the main page includes locallinks. The local links are other pages of the website that areassociated with the main page. When the decision 706 determines that thepage does have local links, each of the local links are processed toobtain page defining information. In particular, a local link isselected 708. Then, the link page associated with the selected locallink is accessed 710. After the link page has been accessed, the linkpage is examined 712 to determine page defining information for thelinked page. The page defining information determined for the linkedpage can be similar to the page defining information for the main page.In addition, the page defining information for the linked page mightalso include information as to its location in a website tree, namely,its level and parent. After the page defining information has beendetermined, a decision 714 determines whether there are more local linksto be processed. When a decision 714 determines that there are morelocal links to be processed, the website examination processing 700returns to repeat the block 708 and subsequent blocks so that additionallinks can be processed. On the other hand, when the decision block 714determines that there are no more local links to be processed, or whenthe decision 706 determines that the web page does not have local links,the current website information is formulated 716 from the page defininginformation. Here, the current website information is formulated 716based on the page defining information that has been obtained for themain page and any pages associated with local links of the website.Thereafter, the website examination processing 700 is complete and ends.

Within a website, there are often graphical links to images that are tobe retrieved and provided with a page of the website. The websiteexamination processing 700 could also monitor these graphic images aspart of the page defining information. Alternatively, the websiteexamination processing 700 could ignore graphical images. In some cases,it may be beneficial for the requester to indicate whether or notgraphical images should be part of the examination processing, as suchmay depend on the content and uniqueness to the website.

In an example provided below an initial website version is compared to acurrent website version. FIG. 8A is a representative tree diagram of theinitial website version. The initial website includes five (5) pages,including index.htm, products.htm, widget1.htm, widget2.htm andabout.htm. The page defining information for each of the pages in thisexample includes file name, position, file size, file date, and locallinks. The position is represented by level, parent level, number. Forexample, the position of widget2.htm is “2-1-3” because the file is atlevel two in the tree diagram, its parent file is at level 1, and itssequential number is 3. The initial website information then resultsfrom the page defining information. Table 1 below indicates the pagedefining information for the initial website.

TABLE 1 NAME POSITION SIZE (kB) DATE LINKS index.htm 0-0-1 5 Jan. 1,1999 banner.jpg Products.htm 1-0-2 12 Jan. 1, 1999 Widget1.htm 2-1-3 15Jan. 1, 1999 image1.jpg Widget2.htm 2-1-4 18 Jan. 1, 1999 image2.jpgAbout.htm 1-0-5 7 Jan. 1, 1999

Subsequently, the website is changed to the current website version.FIG. 8B is a representative tree diagram of the current website version.The current website includes seven (7) pages, including index.htm,products.htm, widget1.htm, widget2.htm, widget3.htm, about.htm andpress.htm. The page defining information for each of the pages in thisexample includes file name, position, file size, file date, and locallinks. The current website information then results from the pagedefining information. Table 2 below indicates the page defininginformation for the current website.

TABLE 2 NAME POSITION SIZE (kB) DATE LINKS index.htm 0-0-1 5 Jun. 6,1999 banner.jpg Products.htm 1-1-2 13 Jun. 6, 1999 Widget1.htm 2-2-3 15Jan. 1, 1999 image1.jpg Widget2.htm 2-2-4 18 Jan. 1, 1999 image2.jpgWidget3.htm 2-2-5 10 Jun. 6, 1999 image3.jpg About.htm 1-1-6 7 Jun. 6,1999 Press.htm 2-6-7, 2-0-7 6 Jun. 6, 1999

Hence, following website examination processing, the system can comparethe page defining information for the initial website with the pagedefining information of the current website. When the degree or type ofchange to the website from the initial website to the current websiteexceeds a minimum threshold, than update registration can be triggered.Accordingly, update registrations are pursued or recommended only whenbeneficial to the website owner. With respect to the example providedabove, two new files have been added to the website (i.e.,widget3.htmand press.htm), three files were modified, and one additionallocal link has been added. Also, two of the three modified files wereincreased in size by 1 kilobyte (kB). Given these changes to thewebsite, the system can determine that the degree or types of change tothe website indicate that an updated registration be pursued orrecommended. A weighting scheme can be used to weight each of thedifferent attributes of the page defining information differently.

In more simplified embodiments, the website examination could justconsider a particular page, such as a home page, overall all websitesize, the file names of the website, tree structure, or modificationdates. Checksums of some or all of the pages could also be used toidentify when any change is made to a page of a website. However, betterresult can be had by considering the whole website because degree ofchange in the content of the website is important. For example, ifcertain pages were updated (e.g., contact page) to update an addresschange for the business associated with the website, then an updatedregistration would not be necessary. However, the addition of a newproduct page to the website would make an updated registration moreimportant.

In any case, the minimum threshold that triggers or recommends theupdated registration can be selectively set to different levels. Forexample, the different levels can reflect the aggressiveness with whichthe website owner desires to update its registration. An owner desiringmore aggressiveness would lower the minimum threshold, whereas the ownerdesiring less aggressiveness would increase the minimum threshold.

Still another aspect of the invention is that the above-mentionedmonitoring processing can be used to monitoring for unauthorized copyingof websites. By monitoring the World Wide Web (WWW) for websites thathave similar website information (e.g., content) using the examinationtechniques mentioned above, the invention can determine those websitesthat have copied content from one's website. This is an automatedprocesses that compares an original website with numerous other websiteson the WWW and notifies the administrator of the original website whenwebsites with similar content are found.

Yet another aspect of the invention is that domain name monitoring canbe automatically performed. Automatic monitoring of domain names isbeneficial to holders of similar domain names, trademark owners, andcompetitors.

FIG. 8C is a block diagram of a domain monitoring system 850 accordingto one embodiment of the invention. The domain monitoring system 850monitors the registration of domain names. The domain monitoring system850 includes a domain monitoring server 852 that couples to the Internet854. The domain monitoring server 852 also couples to a monitoringdatabase 856. The monitoring database 856 stores information regardingthe domains to be monitored by the domain monitoring system 850.

The domain monitoring system 850 also includes a requestor's computer858 that couples to the Internet 854 through an ISP 860. A requestoroperates the requestor's computer 858 to request that a domain name bemonitored and that notifications be provided to the requestor whensimilar registrations to the domain name have been registered. Thedomain monitoring server 852 stores information describing monitoringrequested by the requestor and performs the requested monitoring.

The domain monitoring system 850 also includes a domain registrationssearch server 862. The domain registrations search server 862 is coupledto the Internet 854. The domain registrations search server 862 is alsocoupled to a registrations database 864. In one embodiment, the domainregistration search server 862 and the domain registration database 864are provided by a registrar of a registry system that controls theregistration of domain names. For example, in the United States, NetworkSolutions, Inc. was the original registrar and remains a registrar todayalong with several other registrars. The registrations database 864stores information on domain names that have been registered. Forexample, for each domain name that has been registered, the registrationdatabase 864 stores information such as registrant, date ofregistration, technical contact, administrative contact, billingcontact, and host server. The technical contact information, the billingcontact information and the administrative contact information normallyinclude at least an individual's name and electronic mail address.

The domain monitoring system 850 operates by a requestor's computer 858initiating (on behalf of the requester) a request to the domainmonitoring server 852 to monitor a particular domain name. Themonitoring request can be achieved by a requestor utilizing a networkbrowser (e.g., HTML browser) to complete a form that identifies the nameand email address for the requestor as well as identifies the domainname to be monitored. In addition, the monitoring request can alsoprovide an indication of the depth of monitoring requested. For example,the monitoring could be for U.S. variations of the requestor's domainname or watching of international registrations for the requestor'sdomain name. The domain monitoring server 852 stores the request in themonitoring database 856. Thereafter, periodically, the domain monitoringserver 852 retrieves the domain names to be monitored from themonitoring database 856. For each of the domain names to be monitored,the domain monitoring server 852 queries the registration database 864for an indication of whether or not similar domain names have beenregistered. Typically, the domain name being monitored has already beenregistered by the requester, and thus the monitoring of the domain namessearches for new registrations of domain names that are substantiallysimilar to the domain name being monitored. For example, if therequestor had registered the domain name “amazon.com”, the monitoring ofthe domain names could determine whether any amazon?.? are newlyregistered, where “?” represents one or more wildcard characters. Suchmonitoring could instead also search for more specific, and perhapspredetermined, domain names to limit the processing overhead. In anycase, the monitoring for this example might flag new registrations foramazon.net, amazon.org, amazon.co.uk, amazon.org.uk, amazon.to,amazons.com, amazons.net, and amazons.org.

The domain monitoring server 852 can search the registrations database864 through the domain registration search server 862 provided by theregistrar in one embodiment of the invention. In another embodiment ofthe invention, the domain monitoring server 852 would be able toeffectively bypass the domain registration search server 862 (or flowthrough) to access the registrations database 864. Typically, however,the domain monitoring server 852 will have to satisfy securityrequirements and parameters required by the domain registration searchserver 862 when attempting to access the registrations database 864.

FIG. 9 is flow diagram of domain monitoring process 900 according to oneembodiment of the invention. The domain monitoring processing 900 is,for example, performed by the domain monitoring server 852 illustratedin FIG. 8C.

The domain monitoring processing 900 initially identifies 902 domains tobe monitored. Here, the domains to be monitored represent a particulardomain name that the requester desires to search about and to benotified when similar domain names have been registered. After thedomains to be monitored have been identified 902, one of the domains tobe processed is selected 904. Then, the domain space to be monitored isretrieved or determined 906. In one embodiment, the domain space about adomain name to be monitored can be predetermined by the requester and insuch case is simply retrieved 906. On the other hand, when the domainspace about a domain name to be monitored is not predetermined by therequester, then the domain space can be determined by the domainmonitoring server 852. In some cases, the domain monitoring server 852may need to access different registrations databases.

After the domain space has been obtained, a domain variation is selected908 from the domain space. In other words, the domain space includesvarious domain variations associated with the primary domain. Then, thedomain registration database is searched 910 for the selected domainvariation. A decision 912 then determines whether the selected domainvariation has been registered. When the decision 912 determines that theselected domain variation has not been registered, then an unregisteredflag is stored 914 for the selected domain variation. On the other hand,when the decision 912 determines that the selected domain variation hasbeen registered, a registered flag is stored 916 for the selected domainvariation.

Next, following either the storing operations 914 or 916, a decision 918determines whether there are more domain variations within the domainspace to be processed. When the decision 918 determines that there aremore domain variations to be processed, then the domain monitoringprocessing 900 returns to repeat the selecting operation 908 andsubsequent operations. On the other hand, when the decision 918determines that there are no more domain variations to be processed,then a decision 920 determines whether there are other domains to bemonitored. When the decision 920 determines that there are other domainsto be monitored, then the domain monitoring processing 900 returns torepeat the operation 904 and subsequent operations. Alternatively, whenthe decision 920 determines that there are no other domains to bemonitored, then the domain monitoring processing 900 is complete andends.

The domain monitoring process 900 can operate continuously or can beperiodically invoked. It is likely that periodic invocation of thedomain monitoring process 900 will be adequate to sufficiently monitorthe registration of domains.

FIG. 10 is a flow diagram of registration notification processing 1000according to one embodiment of the invention. The registrationnotification processing 1000 is, for example, performed by the domainmonitoring server 852 illustrated in FIG. 8C.

The registration notification processing 1000 serves to notify therequestor when domain variations of the monitored domain are registered.Specifically, the registration notification processing 1000 initiallyidentifies 1002 domains being monitored. Then, one of the domains beingmonitored is selected 1004. A decision 1006 then determines whether anyof the domain variations associated with the selected domain have aregistered flag. When the decision 1006 determines that none of thedomain variations has a registered flag, then there is no need to notifythe requester for the selected domain because none of the domainvariations has been registered. In one embodiment, the operations1002-1006 can be performed by a database query in the cases where adatabase (e.g., monitoring database 856) holds theregistered/unregistered flags.

On the other hand, when the decision 1006 determines that there are oneor more registered flags for the domain variations of the selecteddomain, then the registration notification processing 1000 performsadditional processing to not only notify the requester but also possiblywarning the new registrant. More particularly, a registration report isproduced 1008. In one embodiment, the registration report containsinformation on the recent registrations that are similar (e.g., domainvariations) to the domain name being monitored. The information in theregistration report for each of these recent registrations can, forexample, include registrant, date of registration, technical contact,administrative contact, billing contact, and host server. Then, theregistration report is transmitted 1010 to the requestor for theselected domain.

Next, a decision 1012 determines whether automatic warnings have beenrequested. In one embodiment, automatic warnings can be requested whenthe domain monitoring is requested. When the decision 1012 determinesthat automatic warnings have been requested, then a warning message isproduced 1014. After the warning message has been produced 1014, thewarning message is transmitted 1016 to the offending registrant.Alternatively, when the decision 1012 determines that the automaticwarning has not been requested, then the operations 1014 and 1016 arebypassed.

In any case, following the transmission 1016 of the warning message, orfollowing the decisions 1006 or 1012 when their conditions are notsatisfied, a decision 1018 determines whether there are other domains tobe processed. When the decision 1018 determines that there are otherdomains to be processed, the registration notification processing 1000returns to repeat the operation 1004 and subsequent operations so thatother monitoring requests can be processed. Alternatively, when thedecision 1018 determines that there are no other domains to beprocessed, the registration notification processing 1000 is complete andends.

The transmission 1010 of the registration report can be achieved in avariety of ways, including electronic mail or facsimile. Also, thewarning messages can be automatically sent according to the invention.Alternatively, the warning letters could not be sent automatically but,instead, be sent following consent of the requester. For example, therequestor could be informed by a registration report via email that asimilar domain has been registered by an offending registrant, then in areply to the electronic mail registration report or by particularrequest, the requestor can authorize the sending of a warning message tothe offending registrant.

Although the domain monitoring discussed above with respect to FIGS.8-10 monitors for recent domain registrations, domain monitoring canalso monitor for implementation of an active website using a domain namethat is similar to the domain name being monitored. Here, periodicallythe domain monitoring server 852 could search the Internet 854 for awebsite at domain names deemed similar to the domain name beingmonitored. Receiving back an error when the website is not foundindicates that the offending domain name, even if registered, is not inuse (i.e., inactive). The requester can also be notified when activewebsite with offending domain names are discovered.

Such monitoring can also be used with the monitoring for newregistrations. For example, after a new registration for an offendingdomain name is found, the offending domain name can be monitored foractivation of its website. In such case, the registration report canbecome a registration and activation report.

The various aspect of the invention can be used separately or in anycombination. Although the invention has been described in context of theInternet, more generally, the invention can use any network, including alocal, wide-area, or global network.

The invention is preferably implemented in software, but can beimplemented in hardware or a combination of hardware and software. Theinvention can also be embodied as computer readable code on a computerreadable medium. The computer readable medium is any data storage devicethat can store data which can be thereafter be read by a computersystem. Examples of the computer readable medium include read-onlymemory, random-access memory, CD-ROMs, magnetic tape, optical datastorage devices, and carrier waves. The computer readable medium canalso be distributed over a network coupled computer systems so that thecomputer readable code is stored and executed in a distributed fashion.

The many features and advantages of the present invention are apparentfrom the written description and, thus, it is intended by the appendedclaims to cover all such features and advantages of the invention.Further, since numerous modifications and changes will readily occur tothose skilled in the art, it is not desired to limit the invention tothe exact construction and operation as illustrated and described.Hence, all suitable modifications and equivalents may be resorted to asfalling within the scope of the invention.

1. A computer-implemented method for monitoring domain nameregistrations, said method comprising: (a) receiving a request tomonitor a name, wherein the request to monitor is to identify at leastone domain name that is similar to the name to be monitored and whereinthe at least one similar domain name matches at least one domainvariation of the name to be monitored; (b) determining a domain spaceabout the name to be monitored, the domain space including the at leastone domain variation of the name to be monitored; (c) searching adatabase of domain name registrations to identify one or moreregistrations of domain names that match the at least one variation ofthe name being monitored; (d) notifying the requestor of the identifiedone or more registrations of domain names that have been identified bysaid searching (c) as matching the at least one variation of the namebeing monitored; and (e) sending warning messages to one or moreregistrants, other than the requestor, of the identified one or moreregistrations indicating that the identified one or more registrationsare substantially similar to the name being monitored, wherein thewarning message sent to each of the one or more registrants includes anotice indicating that the corresponding registrant has registered anoffending registration.
 2. A computer-implemented method as recited inclaim 1, wherein said notifying (d) is performed by electronic mail. 3.A computer-implemented method as recited in claim 1, wherein the namepertains to a domain name.
 4. A computer-implemented method as recitedin claim 1, wherein said searching (b) searches a plurality of databasesof domain name registrations.
 5. A computer-implemented method asrecited in claim 1, wherein the name to be monitored is an identifiedstring of characters.
 6. A computer-implemented method as recited inclaim 5, wherein said searching (c) identifies those domain nameregistrations that are for domain names that include at least theidentified string of characters.
 7. A computer-implemented method asrecited in claim 1, wherein said searching (c) searches recentregistrations.
 8. A computer-implemented method as recited in claim 1,wherein said notifying (d) comprises: (d1) producing a notificationmessage pertaining to the identified one or more registrations; and (d2)forwarding the notification message to the requestor.
 9. Acomputer-implemented method as recited in claim 8, wherein thenotification message includes at least registrant, date of registrationand contact information for each of the identified registrations.
 10. Acomputer-implemented method as recited in claim 1, wherein saidreceiving (a) comprises receiving monitoring request data from arequestor, the monitoring request data being provided throughinteraction with a web site accessible via the Internet.
 11. Acomputer-implemented method as recited in claim 1, wherein subsequent tosaid receiving (a) of the request to monitor the name, said searching(c), said notifying (d) and said (e) sending are periodicallyautomatically performed.
 12. A computer-implemented method as recited inclaim 1, wherein said method further comprises: (f) monitoringactivation of a website at the domain names of the identified one ormore registrations.
 13. A computer-implemented method as recited inclaim 12, wherein said method further comprises: (g) informing therequestor of the activation of a website at the domain names of theidentified one or more registrations.
 14. A computer-implemented methodfor monitoring domain name registrations, said method comprising: (a)receiving a request to monitor a name on behalf of a requestor; (b)searching a database of domain name registrations to identify one ormore registrations of domain names that match the name being monitored;(c) notifying the requestor of the identified one or more registrations;and (d) sending warning messages to one or more registrants, other thanthe requestor, of the identified one or more registrations indicatingthat the identified one or more registrations match the name beingmonitored, wherein the warning message sent to each of the one or moreregistrants includes a notice indicating that the correspondingregistrant has registered an offending registration.
 15. Acomputer-implemented method as recited in claim 14, wherein said sending(d) of the warning messages is done automatically for the requestor oron specific request by the requestor.
 16. A computer-implemented methodas recited in claim 14, wherein said receiving (a) comprises receivingmonitoring request data from a requestor, the monitoring request databeing provided through interaction with a web site accessible via theInternet.
 17. A computer-implemented method as recited in claim 16,wherein the name to be monitored is an identified string of characterstogether with at least one wildcard character, and wherein saidsearching (b) is periodically automatically performed and serves toidentify those domain name registrations that are for domain names thatinclude the identified string of characters as well as satisfy the atleast one wildcard character.
 18. A computer-implemented method asrecited in claim 16, wherein said method further comprises: (d)monitoring activation of a website at the domain names of the identifiedone or more registrations; and (e) informing the requestor of theactivation of a website at the domain names of the identified one ormore registrations.
 19. A computer-implemented method for monitoringdomain name registrations, said method comprising: (a) registering aname to be monitored for a requestor, wherein the name is monitored toidentify one or more domain names that are substantially similar to thename to be monitored; (b) searching at one or more registrationdatabases to identify one or more registrations of domain names that aresimilar to that of the name to be monitored, wherein the searching forthe one or more registrations of domain names operates to monitor domainname registrations to identify one or more domain name registrationsthat are substantially similar to the name to be monitored; (c)notifying the requestor of the identified one or more registrations; and(d) sending warning messages to one or more registrants, other than therequestor, of the identified one or more registrations indicating thatthe identified one or more registrations are substantially similar tothe name being monitored, wherein the warning message sent to each ofthe one or more registrants includes a notice indicating that thecorresponding registrant has registered an offending registration,wherein said searching (b) identifies one or more registrations ofdomain names that are variants of the name to be monitored.
 20. Acomputer-implemented method as recited in claim 19, wherein saidnotifying (c) is performed by electronic mail.
 21. Acomputer-implemented method as recited in claim 19, wherein the one ormore registration databases are associated with one or more registrars.22. A computer-implemented method as recited in claim 19, wherein thename pertains to a domain name.
 23. A computer-implemented method asrecited in claim 19, wherein the name to be monitored is an identifiedstring of characters.
 24. A computer-implemented method as recited inclaim 23, wherein said searching (b) identifies those registrations thatare for domain names that include at least the identified string ofcharacters.
 25. A computer-implemented method as recited in claim 19,wherein said searching (b) searches recent registrations.
 26. Acomputer-implemented method as recited in claim 19, wherein saidnotifying (c) comprises: (c1) producing a notification messagepertaining to the identified one or more registrations; and (c2)forwarding the notification message to the requestor.
 27. Acomputer-implemented method as recited in claim 26, wherein thenotification message includes at least registrant, date of registrationand contact information for each of the identified one or moreregistrations.
 28. A computer-implemented method as recited in claim 19,wherein said registering (a) comprises receiving registration data fromthe requestor, the registration data being provided through interactionwith a web site accessible via the Internet.
 29. A computer-implementedmethod as recited in claim 19, wherein said sending (d) of the warningmessages is done automatically for the requestor or on specific requestby the requestor.
 30. A computer-implemented method as recited in claim19, wherein said method further comprises: (d) monitoring activation ofa website at the domain names of the identified one or moreregistrations.
 31. A computer-implemented method as recited in claim 30,wherein said method further comprises: (e) informing the requestor ofthe activation of a website at the domain names of the identified one ormore registrations.
 32. A computer-implemented method as recited inclaim 19, wherein subsequent to said registering (a) of the name to bemonitored, said searching (b) and said notifying (c) are periodicallyautomatically performed.
 33. A computer-implemented method formonitoring domain name registrations, said method comprising: (a)registering a name to be monitored for a requestor, wherein the name ismonitored to identify one or more domain names that are similar to thename to be monitored; (b) searching the one or more registrationdatabases to identify the one or more registrations of domain names thatare similar to that of the name to be monitored, wherein the searchingfor the one or more registrations of domain names operates to monitordomain name registrations to identify one or more domain nameregistrations that are similar to the name to be monitored; (c)notifying the requestor of the identified one or more registrations; and(d) sending warning messages to one or more registrants, other than therequestor, of the identified one or more registrations indicating thatthe identified one or more registrations are similar to the name beingmonitored, wherein the warning message sent to each of the one or moreregistrants includes a notice indicating that the correspondingregistrant has registered an offending registration, wherein the name tobe monitored is a character string, and wherein the identified one ormore registrations of domain names that are similar to the that of thename are those that include the character string as well as at least oneadditional character not in the character string.
 34. Acomputer-implemented method as recited in claim 33, wherein subsequentto said registering (a) of the name to be monitored, said searching (b)and said notifying (c) are periodically automatically performed.
 35. Adomain monitoring system for monitoring domain name registrations, saiddomain monitoring system comprising: a domain monitoring server, saiddomain monitoring server being configured to: receive a request tomonitor a name on behalf of a requestor; search a database of domainname registrations to identify one or more registrations of domain namesthat match the name being monitored; notify the requestor of theidentified one or more registrations; and send warning messages to oneor more registrants, other than the requestor, of the identified one ormore registrations indicating that the identified one or moreregistrations match the name being monitored, wherein the warningmessage sent to each of the one or more registrants includes a noticeindicating that the corresponding registrant has registered an offendingregistration.
 36. A domain monitoring system as recited in claim 35,wherein said domain monitoring system comprises: a data storage deviceconfigured to store information regarding one or more names to bemonitored.
 37. A computer readable storage medium storing at leastcomputer program code for monitoring domain name registrations, saidcomputer readable storage medium comprising: computer program code forregistering a name to be monitored for a requestor, wherein the name ismonitored to identify one or more domain names that are substantiallysimilar to the name to be monitored; computer program code for searchingat one or more registration databases to identify one or moreregistrations of domain names that are similar to that of the name to bemonitored, wherein the searching for the one or more registrations ofdomain names operates to monitor domain name registrations to identifyone or more domain name registrations that are substantially similar tothe name to be monitored; computer program code for notifying therequestor of the identified one or more registrations; and computerprogram code for sending a warning message to one or more registrants,other than the requestor, of the identified one or more registrationsindicating that the identified one or more registrations aresubstantially similar to the name being monitored, wherein the warningmessage sent to each of the one or more registrants includes a noticeindicating that the corresponding registrant has registered an offendingregistration,
 38. A computer readable storage medium as recited in claim37, wherein said computer readable storage medium further comprises:computer program code for monitoring activation of a website at thedomain names of the identified one or more registrations.
 39. computerreadable storage medium as recited in claim 38, wherein said computerreadable storage medium further comprises: computer program code forinforming the requestor of the activation of a website at the domainnames of the identified one or more registrations.
 40. computer readablestorage medium as recited in claim 37, wherein said computer programcode for searching identifies one or more registrations of domain namesthat are variants of the name to be monitored.
 41. computer readablestorage medium as recited in claim 37, wherein said computer programcode for notifying notifies the requestor by electronic mail.
 42. Acomputer readable storage medium as recited in claim 37, wherein saidcomputer program code for sending the warning message electricallytransmits the warning message via electronic mail.
 43. A computerreadable storage medium as recited in claim 42, wherein said computerprogram code for sending of the warning message electronically transmitsthe warning message only after specifically approved for distribution bythe requestor.
 44. A computer readable storage medium as recited inclaim 37, wherein said computer program code for registering receivesregistration data provided by the requestor, the registration data beingprovided through interaction with a web site accessible via theInternet.